/*
 * Copyright (c) 2015 www.smarthome.com All rights reserved.
 * 本软件源代码版权归----所有,未经许可不得任意复制与传播.
 */
package com.smarthome.base.dao.impl;

import java.util.List;

import org.springframework.stereotype.Repository;

import com.smarthome.domain.bean.ShPropertyFee;
import com.smarthome.base.dao.base.BaseDaoImpl;
import com.smarthome.base.dao.ShPropertyFeeDao;

/**
 * ShPropertyFeeDao 实现类
 * @author KongXiangyu
 * @since 2015-09-07
 */
@Repository("shPropertyFeeDao")
public class ShPropertyFeeDaoImpl extends BaseDaoImpl<ShPropertyFee,Long> implements ShPropertyFeeDao {
	private final static String NAMESPACE = "com.smarthome.base.dao.ShPropertyFeeDao.";
	
	//返回本DAO命名空间,并添加statement
	public String getNameSpace(String statement) {
		return NAMESPACE + statement;
	}

	@Override
	public List<ShPropertyFee> selectEntryListByDoorId(ShPropertyFee fee) {
		return this.selectList(getNameSpace("selectEntryListByDoorId"), fee);
	}

	@Override
	public List<ShPropertyFee> getByDoorIdAndYear(ShPropertyFee fee) {
		return this.selectList(getNameSpace("getByDoorIdAndYear"), fee);
	}

	@Override
	public List<ShPropertyFee> getByDoorIdAndMonth(ShPropertyFee fee) {
		return this.selectList(getNameSpace("getByDoorIdAndMonth"), fee);
	}

	@Override
	public Long queryFeesGroupByDoorCount(ShPropertyFee queryPropertyFee) {
		return this.select(getNameSpace("queryFeesGroupByDoorCount"), queryPropertyFee);
	}

	@Override
	public List<ShPropertyFee> queryFeesGroupByDoor(ShPropertyFee queryPropertyFee) {
		return this.selectList(getNameSpace("queryFeesGroupByDoor"), queryPropertyFee);
	}

	@Override
	public Long queryAmountSumByResidence(ShPropertyFee queryPropertyFee) {
		return this.select(getNameSpace("queryAmountSumByResidence"), queryPropertyFee);
	}
	
}